home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 4
/
Aminet 4 - November 1994.iso
/
aminet
/
comm
/
net
/
amitcp_bin_22.lha
/
AmiTCP-2.2
/
doc
/
netfs.doc
< prev
next >
Wrap
Text File
|
1993-10-19
|
7KB
|
203 lines
NetFS -- network file system for AmiTCP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
by Timo Rossi
Version 0.41 (18-Aug-93)
NetFS is a network filesystem for Amigas running the AmiTCP protocol stack.
Requirements:
~~~~~~~~~~~~~
· AmigaOS 2.04 or later (AmiTCP requires it anyway)
· AmiTCP version 2.0 or later (hopefully the later versions are binary
compatible with 2.0)
· Some sort of network interface that has a Sana2 driver and works
with AmiTCP (Ethernet, ArcNet, SLIP, CSLIP, PLIP or something other,
and actually you can use it with loopback on one machine, but
that is not normally very useful...)
Installation instructions:
~~~~~~~~~~~~~~~~~~~~~~~~~~
· Make sure that you have AmiTCP configured properly and it can communicate
between the machines you want to use with NetFS (you can use
the ping-command for checking this)
· Copy netfs-server to AmiTCP:bin-directory on server machine
· Copy netfs-handler to L:-directory on client machine
· Copy netmount to some directory that is in your path (AmiTCP:bin
is a good place) on client machine.
· Add the following line to the AmiTCP:db/services on all machines
that will use NetFS (both client and server):
amiganetfs 2500/tcp
You may select another port number if the default 2500 conflicts with
something (port 2500 is not officially registered for NetFS)
If you already have AmiTCP running and don't want to reboot the machine,
you should send the RESET-command to the AmiTCP AREXX-port to get it
to re-read the configuration file.
(You can also use the AmiTCP AREXX port to add the service entry without
editing the services or netdb files. See AmiTCP documentation for
details)
· Add the following line to the AmiTCP:db/inetd.conf on server machine.
amiganetfs stream tcp nowait root amitcp:serv/netfs-server
If you have put netfs-server in some other directory than amitcp:bin,
you should use that directory name here instead.
If you already have AmiTCP and inetd running and don't want to
reboot the machine, you should send a Ctrl-F signal to inetd with
the break-command. If you don't already have inetd running,
you need to start it (and add a command to start it to User-Startup
or AmiTCP:bin/StartNet).
· Use the netmount-command to mount the partitions you want.
The command syntax is:
netmount hostname remotedev localdev
For example, if you want to mount drive dh0: on a machine called Amiga1
and you want to call the local device rh0:, you can use the following:
netmount Amiga1 dh0 rh0
Note that there are no colons in the end of the device names.
The full command template for netmount is:
SERVER=HOST/A,REMOTEDEV/A,LOCALDEV/A,HANDLER/K,NOACT/S:
If you have put netfs-handler in some other directory than L: or renamed
it, you can specify its filename with the HANDLER keyword.
Normally netmount automatically activates the mounted device (the same
way as 'Mount=1' keyword in mountlist). If you don't want that to
happen, you can use the NOACT-switch. In that case the device process
starts when the device is first referenced.
MountLists (optional):
~~~~~~~~~~~~~~~~~~~~~~
Alternatively you can make the mountlist entries and use the normal mount-
command. You can put these in the normal DEVS:MountList file or a separate
file and use the Mount FROM-option. If you have AmigaDOS 2.1 or newer,
you can also use the new style mountfiles instead of mountlists.
Here is an example mountlist entry:
RH0:
Handler = L:netfs-handler
Priority = 5
StackSize = 5000
GlobVec = -1
Mount = 1
Startup = Server-machine.name.domain/Device-DH0:
#
The only parameters that you need to change are the server machine name
and the device name (The syntax is a little strange for compatibility with
different versions of the Mount-command. Most of them don't like '='-signs
on the startup-line)
If you use the 2.1+ mountfiles, you don't need the device name in the beginning
or the '#' in the end.
(But it is so much easier to use the netmount-command, that you probably
don't want to use mountlists)
Security (or the lack of it):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Netfs has a couple of primitive security features.
· You can prevent mounting a partition by putting a file called '.nomount'
in the root directory of that partition.
· You can cause a partition to be mounted in read-only mode by putting
a file called '.readonly' in the root directory of that partition.
You cannot control which machines may connect to the server, so it might
not be a good idea to connect a machine with netfs-server to the
global Internet (of course you can use a strange port number
and hope that nobody guesses it (security through obscurity)).
It is likely that future versions of netfs have more advances security/
access control features.
Volume names:
~~~~~~~~~~~~~
Netfs normally automatically uses the remote volume name in the mounted
device, but if there is a name collision (another volume/device/assign
of the same name already exists), it adds '_2' in the name.
You can relabel the mounted volume, but this does not affect the actual
disk on the server machine.
Workbench:
~~~~~~~~~~
Netfs does not allow access (or Open(), anyway) to a file called '.backdrop',
so left out icons do not work over the network.
Reconnect:
~~~~~~~~~~
If the server machine is rebooted, NetFS will automatically reconnect
to it when it is running again. However, there may be long timeouts
after a connection failure before NetFS gives up. This is a normal
feature of the TCP protocol that NetFS uses for its connections.
Known problems:
~~~~~~~~~~~~~~~
- speed/performance is not the best possible
- does not support all 2.0 packet types
(does not support notification or file locking, but does support links)
- because netfs uses one TCP connection and separate server/client processes
for each mounted device, memory usage is probably more than actually
necessary if netfs was implemented in some other, smarter way...
- if the client crashes and there are open locks/filehandles on the mounted
disk, they remain open until the server is booted.
- netmount should also work from Workbench (using tooltypes
as parameters). It doesn't in the current version.
Copyright and distribution:
~~~~~~~~~~~~~~~~~~~~~~~~~~~
NetFS is Copyright © 1993 by Timo Rossi. It can be freely distributed
for non-commercial purposes. It can be included on disk collections such
as Fred Fish's AmigaLibDisks or CD-ROMs such as the AmiNET CD-ROM.
It may not be used for military purposes or life-critical purposes such
as controlling nuclear reactors or guidance systems for a manned spacecraft.
If you want to include netfs in a commercial product, you should contact
me first (my address is in the next section).
NetFS is NOT under the GNU General Public Licence.
~~~
Source code is not currently available, but it may be in the future...
Contact information:
~~~~~~~~~~~~~~~~~~~~
Timo Rossi
Mattilankatu 40 A 4
40600 Jyväskylä
FINLAND
E-Mail: trossi@jyu.fi